home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1998 December: Technology Seed / ADC Seed CD - Dec'98.toast / FireWire / FireWire 1.3 SDK DR1 / Source / FWIM / MakeFile < prev   
Encoding:
Makefile  |  1998-09-21  |  12.1 KB  |  404 lines  |  [TEXT/MPS ]

  1. #
  2. #    File:        MakeFile
  3. #
  4. #    Contains:    Build rules for FWIM sample code.
  5. #
  6. #    Version:    1.0
  7. #
  8. #    Written by:    Erik Staats
  9. #
  10. #    Copyright:    © 1996-1998 by Apple Computer, Inc., all rights reserved.
  11. #
  12. #    File Ownership:
  13. #
  14. #        DRI:                Eric Anderson
  15. #
  16. #        Other Contact:        Jay Lloyd
  17. #
  18. #        Technology:            FireWire
  19. #
  20. #    Writers:
  21. #
  22. #        (jkl)    Jay Lloyd
  23. #
  24. #    Change History (most recent first):
  25. #
  26. #      <FW32>      8/7/98    jkl        Added an example of how MergeFragment may be used to combine
  27. #                                    multiple fwims (or any code fragments) into a single file.
  28. #      <FW31>      8/6/98    jkl        Updated for SDK build of OpenHCI fwim.
  29. #      <FW30>     7/29/98    jkl        Updated for Interfaces&Libraries 3.1. Bumped version for this.
  30. #      <FW29>     8/29/97    KDM        Bumped version to 1.0.1a6. Piece of Blaze 1.1a6
  31. #      <FW28>     6/19/97    GG        Bumped version to 1.0.1a5.
  32. #      <FW27>      6/5/97    EA        Added instructions to build PeleFWIM sample code.
  33. #      <FW26>     5/29/97    GG        Bumped version to 1.01a4.
  34. #      <FW25>     5/16/97    GG        Bumped FireWire version to 1.01a3.
  35. #      <FW24>     4/29/97    GG        Bumped version to 1.0.1a2.
  36. #      <FW23>     4/10/97    GG        Bumped version to 1.0.1d1.
  37. #      <FW22>     3/27/97    GG        Bumped version to 1.0 GM.
  38. #      <FW21>     3/19/97    GG        Bumped version to 1.0b3.
  39. #      <FW20>     3/12/97    GG        Bumped version to 1.0b2.
  40. #      <FW19>     2/19/97    GG        Bumped version to 1.0a3.
  41. #      <FW18>     2/11/97    GG        Bumped copyright to 1997.
  42. #      <FW17>     2/11/97    GG        Bumped version to 1.0a2.
  43. #      <FW16>      2/4/97    GG        
  44. #      <FW15>      2/4/97    GG        Bumped version to 1.0d24.
  45. #      <FW14>     1/28/97    GG        Bumped version to 1.0d23.
  46. #      <FW13>     1/21/97    GG        Bumped version to 1.0d22.
  47. #      <FW12>      1/2/97    GG        Bumped Version to 1.0d21.
  48. #      <FW11>     12/6/96    GG        Bumped version to 1.0d19.
  49. #      <FW10>    11/27/96    ES        Removed links to DevNLib.
  50. #       <FW9>    11/26/96    ES        Removed -main FWIMInterface option from links.
  51. #       <FW8>    11/14/96    GG        Bumped version to 1.0d18.
  52. #       <FW7>    10/31/96    ES        Bumped version to 1.0d17.
  53. #       <FW6>    10/16/96    ES        Bumped version to 1.0d16.
  54. #       <FW5>     10/2/96    ES        Bumped version to 1.0d15.
  55. #       <FW4>     9/12/96    ES        Bumped version to 1.0d14.
  56. #       <FW3>     8/26/96    ES        Changed to use MrC and SC. This MakeFile will now only work with
  57. #                                    ETO #20 and forward.
  58. #       <FW2>      8/7/96    ES        Filled in contains and written by fields.
  59. #       <FW1>      8/7/96    ES        first checked in
  60. #
  61. #
  62.  
  63. ################################################################################
  64. #
  65. # Define some directories
  66. #
  67.  
  68. FWIMRootDir                    =    :
  69.  
  70. FWSampleDir                    =    {FWIMRootDir}::
  71.  
  72. FWInterfacesDir                =    {FWSampleDir}Interfaces:
  73. FWIMInterfacesDir            =    {FWIMRootDir}Interfaces:
  74.  
  75. FWLibrariesDir                =    {FWSampleDir}Libraries:
  76. FWIMLibrariesDir            =    {FWIMRootDir}Libraries:
  77.  
  78. LynxFWIMSourceDir            =    {FWIMRootDir}LynxFWIM:
  79. PeleFWIMSourceDir            =    {FWIMRootDir}PeleFWIM:
  80. OHCIFWIMSourceDir            =    {FWIMRootDir}OHCIFWIM:
  81.  
  82. BuildResultsDir                =    {FWSampleDir}BuildResults:
  83. ObjectsDir                    =    {BuildResultsDir}Objects:
  84. ExtensionsDir                =    {BuildResultsDir}Extensions:
  85.  
  86. ################################################################################
  87. #
  88. # Define LynxFWIM version info
  89. #
  90.  
  91. FWVersion                    =    1
  92. FWRevision                    =    1
  93. FWBuildStage                =    development
  94. FWBuildNumber                =    1
  95. FWShortVersionString        =    '"1.1d1"'
  96. FWLongVersionString            =    '"1.1d1, © 1995-98 Apple Computer, Inc."'
  97.  
  98.  
  99. ################################################################################
  100. #
  101. # Define OHCIFWIM version info
  102. #
  103.  
  104. OHCIVersion                    =    1
  105. OHCIRevision                =    0
  106. OHCIBuildStage                =    development
  107. OHCIBuildNumber                =    1
  108. OHCIShortVersionString        =    '"1.0d1"'
  109. OHCILongVersionString        =    '"1.0d1, © 1998 Apple Computer, Inc."'
  110.  
  111.  
  112. ################################################################################
  113. #
  114. # Define stuff for PowerPC compilation
  115. #
  116.  
  117. MrCOptions                    =    -opt speed                                    ∂
  118.                                 -w 2,7,35                                    ∂
  119.                                 -d TRUE=1                                    ∂
  120.                                 -d FALSE=0                                    ∂
  121.                                 -i "{FWInterfacesDir}"                        ∂
  122.                                 -i "{FWIMInterfacesDir}"                    ∂
  123.                                 -i "{CIncludes}"
  124.  
  125. CPPCOptions                    =    {MrCOptions}
  126.  
  127. AsmPPC                        =    PPCAsm
  128.  
  129. AsmPPCOptions                =    -dialect PowerPC                            ∂
  130.                                 -o {Targ}
  131.  
  132. CPPC                        =    MrC
  133.  
  134. LinkPPC                        =    PPCLink
  135.  
  136.  
  137. ################################################################################
  138. #
  139. # Define stuff for LynxFWIM rez
  140. #
  141.  
  142. RezOptions                    =    -d FWVersion={FWVersion}                    ∂
  143.                                 -d FWRevision={FWRevision}                    ∂
  144.                                 -d FWBuildStage={FWBuildStage}                ∂
  145.                                 -d FWBuildNumber={FWBuildNumber}            ∂
  146.                                 -d FWShortVersionString={FWShortVersionString}    ∂
  147.                                 -d FWLongVersionString={FWLongVersionString}
  148.  
  149. ################################################################################
  150. #
  151. # Define stuff for OHCIFWIM rez
  152. #
  153.  
  154. OHCIRezOptions                =    -d FWVersion={OHCIVersion}                    ∂
  155.                                 -d FWRevision={OHCIRevision}                ∂
  156.                                 -d FWBuildStage={OHCIBuildStage}            ∂
  157.                                 -d FWBuildNumber={OHCIBuildNumber}            ∂
  158.                                 -d FWShortVersionString={OHCIShortVersionString}    ∂
  159.                                 -d FWLongVersionString={OHCILongVersionString}
  160.  
  161.  
  162. ################################################################################
  163. #
  164. # Lynx Lite FWIM
  165. #
  166.  
  167. "{ObjectsDir}LynxLiteFWIM.c.o"    ƒ                                            ∂
  168.                             "{LynxFWIMSourceDir}LynxFWIM.c"                    ∂
  169.                             "{LynxFWIMSourceDir}LynxFWIM.h"                    ∂
  170.                             "{FWInterfacesDir}FireWire.h"
  171.     {CPPC}                                                                    ∂
  172.         "{LynxFWIMSourceDir}LynxFWIM.c"                                     ∂
  173.         -d LynxLiteFWIM=1                                                    ∂
  174.         -i "{FWInterfacesDir}"                                                ∂
  175.         -i "{LynxFWIMSourceDir}"                                            ∂
  176.         {CPPCOptions}                                                        ∂
  177.         -o {Targ}
  178.  
  179. "{ExtensionsDir}LynxLiteFWIM"    ƒƒ                                            ∂
  180.                             "{ObjectsDir}LynxLiteFWIM.c.o"                    ∂
  181.                             "{LynxFWIMSourceDir}LynxFWIM.exp"
  182.     {LinkPPC}                                                                ∂
  183.         -t 'ndrv'                                                            ∂
  184.         -c 'fw  '                                                            ∂
  185.         -xm sharedlibrary                                                    ∂
  186.         -w                                                                     ∂
  187.         -@export "{LynxFWIMSourceDir}LynxFWIM.exp"                            ∂
  188.         "{ObjectsDir}LynxLiteFWIM.c.o"                                        ∂
  189.         "{SharedLibraries}InterfaceLib"                                        ∂
  190.         "{SharedLibraries}StdCLib"                                            ∂
  191.         "{SharedLibraries}NameRegistryLib"                                    ∂
  192.         "{SharedLibraries}DriverServicesLib"                                ∂
  193.         "{SharedLibraries}PCILib"                                            ∂
  194.         "{FWLibrariesDir}FWServicesLib"                                        ∂
  195.         "{PPCLibraries}PPCCRuntime.o"                                        ∂
  196.          -o {Targ}
  197.  
  198. "{ExtensionsDir}LynxLiteFWIM"    ƒƒ                                            ∂
  199.                             "{ObjectsDir}LynxLiteFWIM.c.o"                    ∂
  200.                             "{LynxFWIMSourceDir}LynxFWIM.exp"                ∂
  201.                             "{LynxFWIMSourceDir}LynxFWIM.r"                    ∂
  202.                             "{FWIMRootDir}MakeFile"
  203.     Rez                                                                        ∂
  204.         {RezOptions}                                                        ∂
  205.         "{LynxFWIMSourceDir}LynxFWIM.r"                                        ∂
  206.         -d LynxLiteFWIM=1                                                    ∂
  207.         -a                                                                    ∂
  208.         -o {Targ}
  209.  
  210.  
  211. LynxLiteFWIM    ƒ                                                            ∂
  212.                         "{ExtensionsDir}LynxLiteFWIM"
  213.  
  214.  
  215. ################################################################################
  216. #
  217. # Pele FWIM
  218. #
  219.  
  220. "{ObjectsDir}PeleFWIM.c.o"    ƒ                                                ∂
  221.                             "{PeleFWIMSourceDir}PeleFWIM.c"                    ∂
  222.                             "{PeleFWIMSourceDir}PeleFWIM.h"                    ∂
  223.                             "{FWInterfacesDir}FireWire.h"
  224.     {CPPC}                                                                    ∂
  225.         "{PeleFWIMSourceDir}PeleFWIM.c"                                     ∂
  226.         -i "{FWInterfacesDir}"                                                ∂
  227.         -i "{PeleFWIMSourceDir}"                                            ∂
  228.         {CPPCOptions}                                                        ∂
  229.         -o {Targ}
  230.  
  231. "{ExtensionsDir}PeleFWIM"    ƒƒ                                                ∂
  232.                             "{ObjectsDir}PeleFWIM.c.o"                        ∂
  233.                             "{PeleFWIMSourceDir}PeleFWIM.exp"
  234.     {LinkPPC}                                                                ∂
  235.         -t 'ndrv'                                                            ∂
  236.         -c 'fw  '                                                            ∂
  237.         -xm sharedlibrary                                                    ∂
  238.         -w                                                                     ∂
  239.         -@export "{PeleFWIMSourceDir}PeleFWIM.exp"                            ∂
  240.         "{ObjectsDir}PeleFWIM.c.o"                                            ∂
  241.         "{SharedLibraries}InterfaceLib"                                        ∂
  242.         "{SharedLibraries}StdCLib"                                            ∂
  243.         "{SharedLibraries}NameRegistryLib"                                    ∂
  244.         "{SharedLibraries}DriverServicesLib"                                ∂
  245.         "{SharedLibraries}PCILib"                                            ∂
  246.         "{FWLibrariesDir}FWServicesLib"                                        ∂
  247.         "{PPCLibraries}PPCCRuntime.o"                                        ∂
  248.          -o {Targ}
  249.  
  250. "{ExtensionsDir}PeleFWIM"    ƒƒ                                                ∂
  251.                             "{ObjectsDir}PeleFWIM.c.o"                        ∂
  252.                             "{PeleFWIMSourceDir}PeleFWIM.exp"                ∂
  253.                             "{PeleFWIMSourceDir}PeleFWIM.r"                    ∂
  254.                             "{FWIMRootDir}MakeFile"
  255.     Rez                                                                        ∂
  256.         {RezOptions}                                                        ∂
  257.         "{PeleFWIMSourceDir}PeleFWIM.r"                                        ∂
  258.         -a                                                                    ∂
  259.         -o {Targ}
  260.  
  261.  
  262. PeleFWIM    ƒ                                                                ∂
  263.                         "{ExtensionsDir}PeleFWIM"
  264.  
  265. ################################################################################
  266. #
  267. # OpenHCI FWIM
  268. #
  269.  
  270. "{ObjectsDir}OHCIFWIM.c.o"    ƒ                                                ∂
  271.                             "{OHCIFWIMSourceDir}OHCIFWIM.c"                    ∂
  272.                             "{OHCIFWIMSourceDir}OHCIFWIM.h"                    ∂
  273.                             "{FWInterfacesDir}FireWire.h"
  274.     {CPPC}                                                                    ∂
  275.         "{OHCIFWIMSourceDir}OHCIFWIM.c"                                     ∂
  276.         -i "{FWInterfacesDir}"                                                ∂
  277.         -i "{OHCIFWIMSourceDir}"                                            ∂
  278.         -d Vendor_Name=1                                                    ∂
  279.         {CPPCOptions}                                                        ∂
  280.         -o {Targ}
  281.  
  282. "{ObjectsDir}OHCIFWIMIsoch.c.o"    ƒ                                            ∂
  283.                             "{OHCIFWIMSourceDir}OHCIFWIMIsoch.c"            ∂
  284.                             "{OHCIFWIMSourceDir}OHCIFWIM.h"                    ∂
  285.                             "{FWInterfacesDir}FireWire.h"
  286.     {CPPC}                                                                    ∂
  287.         "{OHCIFWIMSourceDir}OHCIFWIMIsoch.c"                                 ∂
  288.         -i "{FWInterfacesDir}"                                                ∂
  289.         -i "{OHCIFWIMSourceDir}"                                            ∂
  290.         {CPPCOptions}                                                        ∂
  291.         -o {Targ}
  292.  
  293. "{ExtensionsDir}OHCIFWIM"    ƒƒ                                                ∂
  294.                             "{ObjectsDir}OHCIFWIM.c.o"                        ∂
  295.                             "{ObjectsDir}OHCIFWIMIsoch.c.o"                    ∂
  296.                             "{OHCIFWIMSourceDir}OHCIFWIM.exp"
  297.     {LinkPPC}                                                                ∂
  298.         -t 'ndrv'                                                            ∂
  299.         -c 'fw  '                                                            ∂
  300.         -xm sharedlibrary                                                    ∂
  301.         -w                                                                     ∂
  302.         -@export "{OHCIFWIMSourceDir}OHCIFWIM.exp"                            ∂
  303.         "{ObjectsDir}OHCIFWIM.c.o"                                            ∂
  304.         "{ObjectsDir}OHCIFWIMIsoch.c.o"                                        ∂
  305.         "{SharedLibraries}InterfaceLib"                                        ∂
  306.         "{SharedLibraries}StdCLib"                                            ∂
  307.         "{SharedLibraries}NameRegistryLib"                                    ∂
  308.         "{SharedLibraries}DriverServicesLib"                                ∂
  309.         "{SharedLibraries}PCILib"                                            ∂
  310.         "{FWLibrariesDir}FWServicesLib"                                        ∂
  311.         "{PPCLibraries}PPCCRuntime.o"                                        ∂
  312.          -o {Targ}
  313.  
  314. "{ExtensionsDir}OHCIFWIM"    ƒƒ                                                ∂
  315.                             "{OHCIFWIMSourceDir}OHCIFWIM.r"                    ∂
  316.                             "{FWIMRootDir}MakeFile"
  317.     Rez                                                                        ∂
  318.         {OHCIRezOptions}                                                    ∂
  319.         "{OHCIFWIMSourceDir}OHCIFWIM.r"                                        ∂
  320.         -d Vendor_Name=1                                                    ∂
  321.         -a                                                                    ∂
  322.         -o {Targ}
  323.  
  324.  
  325. OHCIFWIM    ƒ                                                                ∂
  326.                         "{ExtensionsDir}OHCIFWIM"
  327.  
  328. ################################################################################
  329. #
  330. # OpenHCI FWIM for another vendor's card
  331. #
  332.  
  333. "{ObjectsDir}OHCIFWIM2.c.o"    ƒ                                                ∂
  334.                             "{OHCIFWIMSourceDir}OHCIFWIM.c"                    ∂
  335.                             "{OHCIFWIMSourceDir}OHCIFWIM.h"                    ∂
  336.                             "{FWInterfacesDir}FireWire.h"
  337.     {CPPC}                                                                    ∂
  338.         "{OHCIFWIMSourceDir}OHCIFWIM.c"                                     ∂
  339.         -i "{FWInterfacesDir}"                                                ∂
  340.         -i "{OHCIFWIMSourceDir}"                                            ∂
  341.         -d Vendor2_Name=1                                                    ∂
  342.         {CPPCOptions}                                                        ∂
  343.         -o {Targ}
  344.  
  345. "{ObjectsDir}OHCIFWIMIsoch2.c.o"    ƒ                                        ∂
  346.                             "{OHCIFWIMSourceDir}OHCIFWIMIsoch.c"            ∂
  347.                             "{OHCIFWIMSourceDir}OHCIFWIM.h"                    ∂
  348.                             "{FWInterfacesDir}FireWire.h"
  349.     {CPPC}                                                                    ∂
  350.         "{OHCIFWIMSourceDir}OHCIFWIMIsoch.c"                                 ∂
  351.         -i "{FWInterfacesDir}"                                                ∂
  352.         -i "{OHCIFWIMSourceDir}"                                            ∂
  353.         {CPPCOptions}                                                        ∂
  354.         -o {Targ}
  355.  
  356. "{ExtensionsDir}OHCIFWIM2"    ƒƒ                                                ∂
  357.                             "{ObjectsDir}OHCIFWIM2.c.o"                        ∂
  358.                             "{ObjectsDir}OHCIFWIMIsoch2.c.o"                ∂
  359.                             "{OHCIFWIMSourceDir}OHCIFWIM.exp"
  360.     {LinkPPC}                                                                ∂
  361.         -t 'ndrv'                                                            ∂
  362.         -c 'fw  '                                                            ∂
  363.         -xm sharedlibrary                                                    ∂
  364.         -w                                                                     ∂
  365.         -@export "{OHCIFWIMSourceDir}OHCIFWIM.exp"                            ∂
  366.         "{ObjectsDir}OHCIFWIM2.c.o"                                            ∂
  367.         "{ObjectsDir}OHCIFWIMIsoch2.c.o"                                    ∂
  368.         "{SharedLibraries}InterfaceLib"                                        ∂
  369.         "{SharedLibraries}StdCLib"                                            ∂
  370.         "{SharedLibraries}NameRegistryLib"                                    ∂
  371.         "{SharedLibraries}DriverServicesLib"                                ∂
  372.         "{SharedLibraries}PCILib"                                            ∂
  373.         "{FWLibrariesDir}FWServicesLib"                                        ∂
  374.         "{PPCLibraries}PPCCRuntime.o"                                        ∂
  375.          -o {Targ}
  376.  
  377. "{ExtensionsDir}OHCIFWIM2"    ƒƒ                                                ∂
  378.                             "{OHCIFWIMSourceDir}OHCIFWIM.r"                    ∂
  379.                             "{FWIMRootDir}MakeFile"
  380.     Rez                                                                        ∂
  381.         {OHCIRezOptions}                                                    ∂
  382.         "{OHCIFWIMSourceDir}OHCIFWIM.r"                                        ∂
  383.         -d Vendor2_Name=1                                                    ∂
  384.         -a                                                                    ∂
  385.         -o {Targ}
  386.  
  387.  
  388. OHCIFWIM2    ƒ                                                                ∂
  389.                         "{ExtensionsDir}OHCIFWIM2"
  390.  
  391. ################################################################################
  392. #
  393. # both OHCI fwims in the same file
  394. #
  395. "{ExtensionsDir}"CombinedOHCIFWIM    ƒ                                        ∂
  396.                             OHCIFWIM                                        ∂
  397.                             OHCIFWIM2
  398.     Duplicate -y "{ExtensionsDir}OHCIFWIM2" {Targ}
  399.     MergeFragment "{ExtensionsDir}OHCIFWIM" {Targ}
  400.  
  401. CombinedOHCIFWIM                    ƒ                                        ∂
  402.                             "{ExtensionsDir}"CombinedOHCIFWIM
  403.  
  404.